//
// Created by edward on 23-3-25.
//

#ifndef LEARNOPENGL_MESH_H
#define LEARNOPENGL_MESH_H

#include "global.h"
#include "Vertex.h"
#include "Texture.h"
#include <vector>

class Shader;

class Mesh {
public:
    Mesh(std::vector<Vertex> vertices, std::vector<unsigned int> indices, std::vector<Texture> textures);
    void draw(Shader *shader);

private:
    void setup();

    unsigned int VAO_, VBO_, EBO_;
    std::vector<Vertex> vertices_;
    std::vector<unsigned int> indices_;
    std::vector<Texture> textures_;
};


#endif //LEARNOPENGL_MESH_H
